home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Champak 52
/
Volume 52 - JOGO DISK .iso
/
Games
/
skipandgouls.swf
/
scripts
/
__Packages
/
characters
/
Skeletuna.as
< prev
next >
Wrap
Text File
|
2007-10-01
|
3KB
|
79 lines
class characters.Skeletuna extends sarbakan.visual.element.DynamicElement
{
static var ATTACK_DELAY = 150;
var nAttackDelayCount = 0;
function Skeletuna(l_oLayer, l_oInfos)
{
super("skeletuna" + sarbakan.visual.element.BaseElement.getNextID());
var _loc3_ = l_oLayer.mc;
this.mc = _loc3_.attachMovie("skeletuna","skeletuna" + sarbakan.visual.element.BaseElement.nNextID,maze.MazeData.DEPTH_SKELETUNA + sarbakan.visual.element.BaseElement.nNextID);
this.mc._x = l_oInfos.x * maze.MazeData.VIEW_TILE_WIDTH;
this.mc._y = l_oInfos.y * maze.MazeData.VIEW_TILE_HEIGHT;
this.disable();
this.updateState();
}
function checkDry()
{
if(this.collideWithElement("water",this.mc.dry))
{
this.oOwner.oDynamicElements.spongebob.endBashingSkeletuna();
this.oOwner.oDynamicElements.spongebob.setState("idle");
this.setState("attackMiss");
this.oOwner.oDynamicElements.spongebob.mc._x = this.mc._x;
}
}
function idle()
{
if(this.nAttackDelayCount < characters.Skeletuna.ATTACK_DELAY)
{
this.nAttackDelayCount = this.nAttackDelayCount + 1;
}
else if(this.oOwner.oDynamicElements.spongebob.bCanBeScared && this.collideWithElementBox("spongebob",this.mc.collider))
{
this.nAttackDelayCount = 0;
this.setState("attackStart");
}
}
function attackStart()
{
if(this.stateFinished())
{
if(this.collideWithElementBox("spongebob",this.mc.collider))
{
this.oOwner.oDynamicElements.spongebob.setState("captured");
this.oOwner.oDynamicElements.spongebob.oCurrentSkeletuna = this;
this.setState("attackGood");
sarbakan.sound.SoundManager.play("skeletunaGood",maze.MazeData.VOLUME_SKELETUNA,1);
}
else
{
this.setState("attackMiss");
sarbakan.sound.SoundManager.play("skeletunaBad",maze.MazeData.VOLUME_SKELETUNA,1);
}
}
}
function attackGood()
{
if(this.stateFinished())
{
this.oOwner.oDynamicElements.spongebob.setState("capturedPush");
this.oOwner.oDynamicElements.spongebob.startBashingSkeletuna();
this.setState("push");
}
}
function attackEnd()
{
if(this.stateFinished())
{
this.setState("idle");
}
}
function attackMiss()
{
if(this.stateFinished())
{
this.setState("idle");
}
}
}